package com.example.kingdee.entity;

import com.google.gson.annotations.SerializedName;
import lombok.Data;

import java.util.List;

@Data
public class JstSalOrder {
	private String supNumber;

	//订单创建时间
	@SerializedName("created")
	private String created;
	//公司编号
	@SerializedName("co_id")
	private int coId;
	//ERP内部订单号，聚水潭生成的订单号，唯一
	@SerializedName("o_id")
	private int oId;
	//店铺编号
	@SerializedName("shop_id")
	private int shopId;
	//线上订单号，线上同步过来的订单号，最长不超过20;唯一
	@SerializedName("so_id")
	private String soId;
	//订单日期
	@SerializedName("order_date")
	private String orderDate;
	//平台订单状态
	@SerializedName("shop_status")
	private String shopStatus;
	//问题类型，仅当问题订单时有效
	@SerializedName("question_type")
	private Object questionType;
	//问题描述
	@SerializedName("question_desc")
	private Object questionDesc;
	//聚水潭订单状态
	@SerializedName("status")
	private String status;
	//国家代码
	@SerializedName("receiver_country")
	private String receiverCountry;
	//收件信息-省
	@SerializedName("receiver_state")
	private String receiver_state;
	//收件信息-市
	@SerializedName("receiver_city")
	private String receiverCity;
	//区
	@SerializedName("receiver_district")
	private Object receiverDistrict;
	//收货地址
	@SerializedName("receiver_address")
	private String receiverAddress;
	//收件信息-街道
	@SerializedName("receiver_town")
	private Object receiverTown;
	//邮编
	@SerializedName("receiver_zip")
	private String receiverZip;
	//买家id
	@SerializedName("buyer_id")
	private int buyerId;
	//发货日期
	@SerializedName("send_date")
	private Object sendDate;
	//应付金额，保留两位小数，单位（元）
	@SerializedName("pay_amount")
	private double payAmount;
	//买家支付运费，保留两位小数，单位（元）
	@SerializedName("freight")
	private String freight;
	//重量
	@SerializedName("weight")
	private double weight;
	//实称重量
	@SerializedName("f_weight")
	private double fWeight;
	//买家留言
	@SerializedName("buyer_message")
	private String buyerMessage;
	//订单备注；卖家备注
	@SerializedName("remark")
	private Object remark;
	//发票抬头
	@SerializedName("invoice_title")
	private Object invoiceTitle;
	//是否货到付款
	@SerializedName("is_cod")
	private boolean isCod;
	//订单类型，普通订单；补发订单；分销Plus；供销Plus；换货订单
	@SerializedName("type")
	private String type;
	//店铺站点信息
	@SerializedName("shop_site")
	private String shopSite;
	//抵扣金额
	@SerializedName("free_amount")
	private double freeAmount;
	//实际支付金额
	@SerializedName("paid_amount")
	private double paidAmount;
	//支付时间
	@SerializedName("pay_date")
	private String payDate;
	//外部支付单号
	@SerializedName("outer_pay_id")
	private String outerPayId;
	//修改时间
	@SerializedName("modified")
	private String modified;
	//订单来源
	@SerializedName("order_from")
	private String orderFrom;
	//店铺名称
	@SerializedName("shop_name")
	private String shopName;
	//旗帜(1红旗，2黄旗，3绿旗，4蓝旗，5紫旗)）
	@SerializedName("seller_flag")
	private Object sellerFlag;
	//计划发货时间
	@SerializedName("plan_delivery_date")
	private String planDeliveryDate;
	//物流公司编码
	@SerializedName("lc_id")
	private String lcId;
	//快递单号
	@SerializedName("l_id")
	private String lId;
	//快递公司
	@SerializedName("logistics_company")
	private String logisticsCompany;
	//
	@SerializedName("discount_rate")
	private double discountRate;
	//发货仓编号
	@SerializedName("wms_co_id")
	private int wmsCoId;
	//币种
	@SerializedName("currency")
	private String currency;
	//线下备注
	@SerializedName("node")
	private Object node;
	//多标签
	@SerializedName("labels")
	private String labels;
	//金额
	@SerializedName("amount")
	private double amount;
	//分销商编号
	@SerializedName("drp_co_id_from")
	private Object drpCoIdFrom;
	//是否拆分后订单
	@SerializedName("is_split")
	private Object isSplit;
	//是否合并后订单
	@SerializedName("is_merge")
	private Object isMerge;
	//订单业务员
	@SerializedName("creator_name")
	private Object creatorName;
	//发票税号
	@SerializedName("buyer_tax_no")
	private Object buyerTaxNo;
	//发票类型
	@SerializedName("invoice_type")
	private Object invoiceType;
	//预计送达时间
	@SerializedName("sign_time")
	private Object signTime;
	//商品（商品总数.sku_id*qty）
	@SerializedName("skus")
	private String skus;
	//确认收货时间
	@SerializedName("end_time")
	private Object endTime;
	//收货邮箱
	@SerializedName("receiver_email")
	private String receiverEmail;
	//主播id
	@SerializedName("referrer_id")
	private Object referrerId;
	//主播名称
	@SerializedName("referrer_name")
	private Object referrerName;
	//买家指定物流
	@SerializedName("shipment")
	private String shipment;
	//平台买家唯一值，仅限平台已经支持的才会返回
	@SerializedName("open_id")
	private Object openId;
	//买家昵称
	@SerializedName("shop_buyer_id")
	private String shopBuyerId;
	//收件信息-收件人
	@SerializedName("receiver_name")
	private String receiverName;
	//手机
	@SerializedName("receiver_mobile")
	private String receiverMobile;
	//电话
	@SerializedName("receiver_phone")
	private String receiverPhone;
	//补发换货单对应的售后单号
	@SerializedName("asId")
	private Object as_id;
	//国际物流单号
	@SerializedName("un_lid")
	private Object unLid;
	//实发快递渠道
	@SerializedName("chosen_channel")
	private String chosenChannel;
	//商品信息
	@SerializedName("items")
	private List<ItemsBean> items;
	//支付信息
	@SerializedName("pays")
	private List<PaysBean> pays;
	//跨境订单财务数据
	@SerializedName("cb_finances")
	private List<CbFinancesBean> cbFinances;

	@Data
	public static class ItemsBean {
		//子订单号，最长不超过20
		@SerializedName("oi_id")
		private int oiId;
		//原始商品编码
		@SerializedName("sku_id")
		private String skuId;
		//款式编码
		@SerializedName("i_id")
		private String iId;
		//款式编码
		@SerializedName("shop_sku_id")
		private String shopSkuId;
		//店铺款式编码
		@SerializedName("shop_i_id")
		private String shopIId;
		//属性
		@SerializedName("properties_value")
		private String propertiesValue;
		//总额
		@SerializedName("amount")
		private double amount;
		//基本售价（原价）
		@SerializedName("base_price")
		private double basePrice;
		//数量
		@SerializedName("qty")
		private int qty;
		//商品名称
		@SerializedName("name")
		private String name;
		//单价
		@SerializedName("price")
		private double price;
		//子订单号
		@SerializedName("outer_oi_id")
		private String outerOiId;
		//退款的唯一单号
		@SerializedName("refund_id")
		private Object refundId;
		//退款数量
		@SerializedName("refund_qty")
		private Object refundQty;
		//申请退款的状态
		@SerializedName("refund_status")
		private Object refundStatus;
		//原始线上单号
		@SerializedName("refund_status")
		private String rawSoId;
		//是否预售
		@SerializedName("is_presale")
		private boolean isPresale;
		//是否赠品
		@SerializedName("is_gift")
		private boolean isGift;
		//商品状态
		@SerializedName("item_status")
		private Object itemStatus;
		//主播ID
		@SerializedName("referrer_Id")
		private Object referrerId;
		//商品图片
		@SerializedName("pic")
		private String pic;
		//商品类型
		@SerializedName("sku_type")
		private String skuType;
		//明细备注
		@SerializedName("remark")
		private String remark;
		//营收小计：买家实付
		@SerializedName("buyer_paid_amount")
		private double buyerPaidAmount;
		//营收小计：卖家实收
		@SerializedName("seller_income_amount")
		private double sellerIncomeAmount;
	}

	@Data
	public static class PaysBean {
		//支付单ID
		@SerializedName("pay_id")
		private int payId;
		//外部支付单号
		@SerializedName("outer_pay_id")
		private String outerPayId;
		//支付时间
		@SerializedName("pay_date")
		private String pay_date;
		//支付金额
		@SerializedName("amount")
		private double amount;
		//支付方式
		@SerializedName("payment")
		private String payment;
		//支付帐号
		@SerializedName("buyer_account")
		private String buyerAccount;
		//是否支付
		@SerializedName("is_order_pay")
		private boolean is_order_pay;
		//支付状态
		@SerializedName("status")
		private String status;
		//支付类型
		@SerializedName("pay_type")
		private int payType;
		//内部订单号
		@SerializedName("o_id")
		private int oId;
	}

	@Data
	public static class CbFinancesBean {
		//内部订单号
		@SerializedName("o_id")
		private int o_id;
		//回扣金额
		@SerializedName("rebate_fee")
		private Object rebateFee;
		//收入税费
		@SerializedName("product_tax")
		private Object productTax;
		//快递税
		@SerializedName("shipping_tax")
		private Object shippingTax;
		//其他收入
		@SerializedName("other_income")
		private Object otherIncome;
		//促销优惠金额
		@SerializedName("voucher_from_seller")
		private Object voucherFromSeller;
		//平台佣金
		@SerializedName("platform_commission")
		private Object platformCommission;
		//转账费
		@SerializedName("transition_fee")
		private Object transitionFee;
		//交易手续费
		@SerializedName("transaction_fee")
		private Object transactionFee;
		//支出税费
		@SerializedName("opaque_bagging_fee")
		private double opaqueBaggingFee;
		//其他费用
		@SerializedName("other_expense")
		private Object otherExpense;

	}
}